6b45e66014c239f959e02f10bd2a3fdb8df8dc8d
[lhc/web/wiklou.git] / tests / selenium / pageobjects / history.page.js
1 const Page = require( 'wdio-mediawiki/Page' ),
2 Api = require( 'wdio-mediawiki/Api' );
3
4 class HistoryPage extends Page {
5 get heading() { return browser.element( '#firstHeading' ); }
6 get headingText() { return browser.getText( '#firstHeading' ); }
7 get comment() { return browser.element( '#pagehistory .comment' ); }
8 get rollback() { return browser.element( '.mw-rollback-link' ); }
9 get rollbackConfirmable() { return browser.element( '.mw-rollback-link .jquery-confirmable-text' ); }
10 get rollbackConfirmableYes() { return browser.element( '.mw-rollback-link .jquery-confirmable-button-yes' ); }
11 get rollbackConfirmableNo() { return browser.element( '.mw-rollback-link .jquery-confirmable-button-no' ); }
12
13 open( title ) {
14 super.openTitle( title, { action: 'history' } );
15 }
16
17 vandalizePage( name, content ) {
18 let vandalUsername = 'Evil_' + browser.options.username;
19
20 browser.call( function () {
21 return Api.edit( name, content );
22 } );
23
24 browser.call( function () {
25 return Api.createAccount(
26 vandalUsername, browser.options.password
27 );
28 } );
29
30 browser.call( function () {
31 Api.edit(
32 name,
33 'Vandalized: ' + content,
34 vandalUsername
35 );
36 } );
37 }
38 }
39
40 module.exports = new HistoryPage();